/*global pi */

pi.mod.define('pi.dvector', function (pi) {
	"use strict";
	var module = {},
		vcalls = [
			// 创建向量
			// return module.create()
			["pi_dvector_new", pi.vcall.TYPE_INT, [pi.vcall.TYPE_INT], "create"],
			
			// 释放向量内存，和new对应
			// module.free(dvec)
			["pi_dvector_free", pi.vcall.TYPE_VOID, [pi.vcall.TYPE_INT], "free"],
			
			// 将元素加入到向量尾部
			// return module.push(dvec)
			["pi_dvector_push", pi.vcall.TYPE_INT, [pi.vcall.TYPE_INT, pi.vcall.TYPE_INT], "push"],
			
			// 弹出向量尾部的元素
			// return module.pop(dvec)
			["pi_dvector_pop", pi.vcall.TYPE_INT, [pi.vcall.TYPE_INT], "pop"]
		];

	// 注册所有 vcall 函数句柄
	pi.vcall.makeVCall("pi_lib.dll", module, vcalls);

	return module;
});